package untitled.src.com.mtwo.work.three;

/**
 * 通话套餐类
 * 特征：通话时长、短信条数、每月资费
 * 行为: 显示所有套餐信息
 */
//继承AbstractPackages类，实现PhoneService接口
public class CallPlan extends AbstractPackages implements PhoneService{

    //声明短信条数
    private int sms;

    //声明CallPlan无参构造函数
    public CallPlan() {
    }
    //声明CallPlan有参构造函数
    public CallPlan(int charges, int time, int sms) {
        //调用父类的构造方法
        super(time,charges);
        this.sms = sms;
    }

    //创建各变量的get和set方法，进行对变量的获取和赋值
    public int getSms() {
        return sms;
    }

    public void setSms(int sms) {
        this.sms = sms;
    }

    //行为: 显示所有套餐信息
    @Override
    public void show(){
        System.out.println("通话时长："+getTime()+"分钟，短信条数："+getSms()+"条，每月资费："+getCharges()+"元");
    }
    //实现PhoneService接口中的showPhoneService抽象方法，并且赋值
    public void showPhoneService(int time,MobilePhoneCard mobilePhoneCard){
        System.out.println("本次"+mobilePhoneCard.getName()+"您通话时长为"+time+"分钟，通话详情如下：");
        mobilePhoneCard.setTime(time);
        mobilePhoneCard.showGetMPC();
    }

}
